/*
Id:[145]	
韩信走马分油 (15分)
题目内容:
 泊松是法国数学家、物理学家和力学家。他一生致力科学事业，成果颇多。有许多著名的公式定理以他的名字命名，比如概率论
中著名的泊松分布。    有一次闲暇时，他提出过一个有趣的问题，后称为：“泊松分酒”。在我国古代也提出过类似问题，遗憾
的是没有进行彻底探索，其中流传较多是：“韩信走马分油”问题。    有3个容器，容量分别为12升，8升，5升。其中12升中装
满油，另外两个空着。要求你只用3个容器操作，最后使得某个容器中正好有6升油。    下面的列表是可能的操作状态记录：12,0,0
4,8,0
4,3,5
9,3,0
9,0,3
1,8,3
1,6,5    
每行3个数据，分别表示12，8，6升容器中的油量    
第一行表示初始状态，第二行表示把12升倒入8升容器后的状态，第三行是8升倒入5升，...    
当然，同一个题目可能有多种不同的正确操作步骤。    本题目的要求是，请你编写程序，由用户输入：各个容器的容量，开始的
状态，和要求的目标油量，程序则通过计算输出是否可能分成功-“Y”，“N”。 
例如，用户输入：
12,8,5,12,0,0,6    
用户输入的前三个数是容器容量（由大到小），接下来三个数是三个容器开始时的油量配置，最后一个数是要求得到的油量（放在
哪个容器里得到都可以）    则程序可以输出“Y”
输入描述:
各个容器的容量，开始的状态，和要求的目标油量
输出描述:
是否可能分成功-“Y”，“N”
输入样例:
12,8,5,12,0,0,6
输出样例:
Y
*/

/*
最大的瓶子只能往中等的瓶子倒；（若中等的瓶子为空）
中等的瓶子只能往最小的瓶子倒；（若最小的瓶子不满）
最小的瓶子只能往最大的瓶子倒；（若最小的瓶子已满）
*/

#include <iostream> 
using namespace std;

const int M = 3;
int A, B, C;
int a, b, c;
int n;

void A_to_B(){
	if(a >= B){
		b = B;
		a = a - B;
	}
	else{
		b = a;
		a = 0;
	}
}

void C_to_A(){
	if(c >= A - a){
		a = A;
		c -= (A - a);
	}
	else{
		a += c;
		c = 0;
	}
}

void B_to_C(){
	if(b >= C - c){
		b -= (C - c);
		c = C;
	}
	else{
		c += b;
		b = 0;
	}
}

int main(){
	char s;
	cin >> A >> s >> B >> s >> C >> s >> a >> s >> b >> s >> c >> s >> n;
	int x = a, y = b, z = c;
	while(a != n && b != n && c != n){
		if(b == 0)
			A_to_B();
		if(c == C)
			C_to_A();
		else if(b != 0)
			B_to_C();
		if(a == x && b == y && c == z){
			cout << "N" << endl;
			return 0;
		}
	}
	cout << "Y" << endl;
    return 0;
}
